package edu.mercer.sse.errors;

import edu.mercer.sse.annotations.Fulfills;

/**
 * Checked Exception.<p>
 *
 */

public class ResourceException extends Exception 

	implements VisitableErrorLogging<String, ErrorLoggingVisitor>

{
	private static final long serialVersionUID = 3468739979926559628L;


	/**
	 * Create checked exception: ResourceError.<p>
	 */

	public ResourceException()
	{
		super();

	}//constructor


	/**
	 * Create checked exception: ResourceError.<p> 
	 * 
	 * @param messageIn - String message to pass along to parent Exception 
	 *      constructor
	 */

	public ResourceException(final String messageIn)
	{
		super(messageIn);

	}//constructor


	/**
	 * Create checked exception: ResourceError.<p> 
	 * 
	 * @param exceptionIn - Exception
	 */

	public ResourceException(final Exception exceptionIn)
	{
		super(exceptionIn);

	}//constructor


	/**
	 * Create checked exception: ResourceError.<p> 
	 * 
	 * @param throwableIn - Throwable
	 */

	public ResourceException(final Throwable throwableIn)
	{
		super(throwableIn);

	}//constructor


	/**
	 * Create checked exception: ResourceError.<p> 
	 * 
	 * @param errorIn - Error
	 */

	public ResourceException(final Error errorIn)
	{
		super(errorIn);

	}//constructor


	@Fulfills("VisitableErrorLogging")
	@Override
	public String accept( final ErrorLoggingVisitor visitor ) 
	{
		return visitor.visit( this );
	
	}//method 	

	
}//class
